package com.koron.order.overhaul.bean.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.koron.order.overhaul.utils.DeleteFlag;
import com.koron.order.overhaul.utils.Sortable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * (OverhaulOrderMajorFormBean) 大修工单-专业下表单从表
 * @author twcao
 * @since 2021-09-29 09:49:32
 */
@Data
@ApiModel("大修工单-专业下表单从表")
public class OverhaulOrderMajorFormBean implements Serializable, DeleteFlag, Sortable {

    private static final long serialVersionUID = 900400035454888838L;

    @ApiModelProperty(value = "ID,32位随机数，主键")
    private String id;

    @ApiModelProperty(value = "工单ID")
    private String overhaulId;

    @ApiModelProperty(value = "专业表ID")
    private String majorId;

    @ApiModelProperty(value = "专业")
    private String major;

    @ApiModelProperty(value = "表单名字")
    private String name;

    @ApiModelProperty("表单编号（即作业标准编号）")
    private String code;

    @ApiModelProperty(value = "作业标准ID")
    private String standardId;

    @ApiModelProperty(value = "现场负责人账号")
    private String jober;

    @ApiModelProperty(value = "现场负责人名字")
    private String joberName;

    @ApiModelProperty(value = "安全监督员账号")
    private String safeMan;

    @ApiModelProperty(value = "安全监督员名称")
    private String safeManName;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    @ApiModelProperty(value = "作业开始时间")
    private Date startTime;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    @ApiModelProperty(value = "作业结束时间")
    private Date endTime;

    @ApiModelProperty("存在问题")
    private String problem;

    @ApiModelProperty("改进建议")
    private String suggestion;

    @ApiModelProperty("作业步骤层级")
    private Integer stepLevel;

    @ApiModelProperty(value = "工单排序")
    private Integer sort;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @JsonIgnore
    @ApiModelProperty(value = "删除标志,0：delete_flag=false，代表未删除1：delete_flag = true，代表已删除", hidden = true)
    private Boolean deleteFlag;
}
